Michael Albinus [Tue, 3 Nov 2020 17:47:32 +0000 (18:47 +0100)]
Some Tramp fixes for directory-files-* and delete-*
* lisp/files.el (delete-directory): Simplify check for trash.
* lisp/net/ange-ftp.el (ange-ftp-delete-file): Implement TRASH.
* lisp/net/tramp-compat.el (tramp-compat-directory-files)
(tramp-compat-directory-files-and-attributes)
(tramp-compat-directory-empty-p): New defaliases.
* lisp/net/tramp.el (tramp-handle-directory-files-and-attributes)
(tramp-skeleton-delete-directory):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory): Use them.
* lisp/net/tramp-sh.el (tramp-sh-handle-directory-files-and-attributes):
Implement COUNT.
* test/lisp/net/tramp-tests.el (tramp-test14-delete-directory):
Do not run trash test for ange-ftp.
(tramp-test16-directory-files)
(tramp-test19-directory-files-and-attributes): Check COUNT argument.
Reuben Thomas [Mon, 2 Nov 2020 21:45:40 +0000 (21:45 +0000)]
Factor out some common code in ispell.el
* lisp/textmodes/ispell.el (ispell-with-safe-default-directory): Add
macro.
(ispell-call-process, ispell-call-process-region): Use it.
Reuben Thomas [Mon, 2 Nov 2020 21:41:05 +0000 (21:41 +0000)]
Simplify ispell-check-version’s use of -vv flag
* lisp/textmodes/ispell.el (ispell-check-version): All supported spell
checker programs accept -vv, including aspell for many years, so use
it.
Harald Jörg [Tue, 3 Nov 2020 14:28:40 +0000 (15:28 +0100)]
cperl-mode: Fix indentation for Emacs 26
* lisp/progmodes/cperl-mode.el (cperl-mode): Add a fix
which is only required for Emacs versions older than 27.
* test/lisp/progmodes/cperl-mode-tests.el (cperl-bug30393):
Add a test to verify correct indentation (bug#30393).
Mauro Aranda [Tue, 3 Nov 2020 13:02:51 +0000 (10:02 -0300)]
Fix customizing user options of type face
* lisp/cus-edit.el (face): Move the %f escape after the tag, because
otherwise customizing a face user option doesn't work:
custom-variable-value-create thinks that everything up until the first
":" is part of the tag, and the item widget doesn't know how to handle
the %f escape.
Stefan Kangas [Tue, 3 Nov 2020 03:37:44 +0000 (04:37 +0100)]
Use lexical-binding in some url-*.el files
* lisp/url/url-dired.el:
* lisp/url/url-ftp.el:
* lisp/url/url-irc.el: Use lexical-binding.
Stefan Kangas [Tue, 3 Nov 2020 03:16:03 +0000 (04:16 +0100)]
Use lexical-binding in solitaire.el
* lisp/play/solitaire.el: Use lexical-binding. Remove redundant
:group args.
Stefan Kangas [Tue, 3 Nov 2020 02:55:50 +0000 (03:55 +0100)]
Use lexical-binding in some of emulation/edt*.el
* lisp/emulation/edt-vt100.el:
* lisp/emulation/edt-pc.el:
* lisp/emulation/edt-lk201.el: Use lexical-binding.
Stefan Kangas [Tue, 3 Nov 2020 01:23:46 +0000 (02:23 +0100)]
Use lexical-binding in pcmpl-rpm.el
* lisp/pcmpl-rpm.el: Use lexical-binding. Remove redundant :group
args.
(pcmpl-rpm-packages): Quote function symbol as such.
Stefan Kangas [Tue, 3 Nov 2020 01:06:05 +0000 (02:06 +0100)]
Use lexical-binding in pcmpl-cvs.el
* lisp/pcmpl-cvs.el: Use lexical-binding.
(executable): Remove unnecessary require.
(pcmpl-cvs-binary): Remove redundant :group arg.
(pcmpl-cvs-tags): Quote function symbol as such.
Stefan Kangas [Tue, 3 Nov 2020 01:04:22 +0000 (02:04 +0100)]
; * lisp/pcomplete.el: Fix typo.
Stefan Kangas [Tue, 3 Nov 2020 00:35:01 +0000 (01:35 +0100)]
Fix exiting the finder-commentary buffer
* lisp/finder.el (finder-exit): Fix exiting the finder-commentary
buffer. (Bug#44384)
(finder-buffer): New defconst.
(finder-list-keywords): Use above new defconst.
Harald Jörg [Mon, 2 Nov 2020 22:44:58 +0000 (23:44 +0100)]
cperl-mode: Skip a test for older Emacsen (preparing for ELPA)
* test/lisp/progmodes/cperl-mode-tests.el (cperl-bug37127):
Skip this test for older Emacsen. The bug has been fixed
in Emacs, but outside of CPerl mode, and therefore will not
be available for older versions via ELPA.
Stefan Kangas [Mon, 2 Nov 2020 18:06:46 +0000 (19:06 +0100)]
Improve ert-resource-directory docstring
* lisp/emacs-lisp/ert-x.el (ert-resource-directory): Improve
docstring.
Reuben Thomas [Mon, 2 Nov 2020 22:10:56 +0000 (22:10 +0000)]
Fix previous patch to ispell.el
* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod):
with-current-buffer and with-output-to-string need to be the other
way around.
Reuben Thomas [Mon, 2 Nov 2020 21:37:46 +0000 (21:37 +0000)]
Fix previous code change to `ispell--call-enchant-lsmod'
* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Restore the
use of with-current-buffer, to avoid enchant-lsmod’s output being
dumped into the current buffer.
Eli Zaretskii [Mon, 2 Nov 2020 19:47:18 +0000 (21:47 +0200)]
Explain last change
* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Explain
the workaround with discarding stderr. (Bug#44318)
Reuben Thomas [Mon, 2 Nov 2020 18:06:11 +0000 (18:06 +0000)]
Make ispell.el ignore warnings from enchant-lsmod (closes #44318)
* lisp/textmodes/ispell.el (ispell--call-enchant-lsmod): Don’t capture
stderr. Also remove unnecessary with-current-buffer wrapper.
Mattias Engdegård [Mon, 2 Nov 2020 17:54:14 +0000 (18:54 +0100)]
Add missing argument to directory_files_internal calls
* src/kqueue.c (kqueue_compare_dir_list, Fkqueue_add_watch):
Pass the new seventh argument.
Eli Zaretskii [Mon, 2 Nov 2020 17:55:48 +0000 (19:55 +0200)]
Fix a recent change in dired.c
* src/dired.c (directory_files_internal): Fix type of integer
variables to avoid overflow in 32-bit builds --with-wide-int.
Eli Zaretskii [Mon, 2 Nov 2020 17:49:32 +0000 (19:49 +0200)]
Improve documentation of a recent commit
* lisp/international/mule-cmds.el (transient-input-method): Doc
fix. Add :version tag.
(transient-input-method): Doc fix.
* etc/NEWS:
* doc/emacs/mule.texi (Select Input Method): Fix wording of the
last change.
Glenn Morris [Mon, 2 Nov 2020 17:27:41 +0000 (09:27 -0800)]
; Merge from origin/emacs-27
The following commit was skipped:
cd69a50648 (origin/emacs-27) Recover the contents of the schemas.xml ...
Glenn Morris [Mon, 2 Nov 2020 17:27:40 +0000 (09:27 -0800)]
Merge from origin/emacs-27
4e6104ea0b ; * src/xdisp.c (display_string): Fix a typo in a comment.
7162228815 Improve indexing of check-declare
d218b28ab5 ; * lisp/autoinsert.el (auto-insert-alist): Fix texinfo URL.
Glenn Morris [Mon, 2 Nov 2020 17:27:40 +0000 (09:27 -0800)]
; Merge from origin/emacs-27
The following commits were skipped:
4de7daa1b9 (emacs-27) ; Auto-commit of loaddefs files.
0c01381423 * doc/lispref/commands.texi (Key Sequence Input): Fix inde...
487aae38d4 Updating docs with all special window prefix keys.
Glenn Morris [Mon, 2 Nov 2020 17:27:40 +0000 (09:27 -0800)]
Merge from origin/emacs-27
1fc9de4b81 Improve reproducibility of generated -pkg.el files
da6234e2df Make sure pixel sizes are zero when setting window size fo...
2d15296db1 Fix failure of 'emacs --daemon' on Cygwin
8abce5b0c6 CC Mode: Only recognize foo (*bar) as a function pointer w...
85d1d8d768 Fix NEWS entry for fix of Bug#44080
2443b15a91 * src/buffer.c (syms_of_buffer) <fill-column>: Improve doc...
# Conflicts:
# etc/NEWS
Michael Albinus [Mon, 2 Nov 2020 16:56:06 +0000 (17:56 +0100)]
Fix some glitches in recent directory-files-* changes
* doc/lispref/files.texi (Contents of Directories):
Fix description of directory-files, directory-empty-p and
directory-files-and-attributes.
* etc/NEWS: Fix entry for directory-files-and-attributes. Fix typos.
* lisp/dired.el (directory-empty-p): Move function from here ...
* lisp/files.el (directory-empty-p): ... to here.
* lisp/net/ange-ftp.el (ange-ftp-directory-files): Call `nreverse' later.
* lisp/net/tramp.el (tramp-handle-directory-files):
* lisp/net/tramp-adb.el
(tramp-adb-handle-directory-files-and-attributes): Do not call
`nreverse'.
* src/dired.c (Fdirectory_files)
(Fdirectory_files_and_attributes): Fix docstrings.
* test/src/dired-tests.el: Removed. Tests moved to
test/lisp/dired-tests.el.
* test/lisp/dired-tests.el (dired-test-bug27899): Tag it :unstable.
(dired-test-directory-files)
(dired-test-directory-files-and-attributes): New tests.
Michael Albinus [Mon, 2 Nov 2020 16:53:00 +0000 (17:53 +0100)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs into master
João Távora [Mon, 2 Nov 2020 16:24:59 +0000 (16:24 +0000)]
Fix Elisp's elisp--documentation-one-liner (bug#43609)
To be backward compatible, this function must return nil when there is
a symbol at point but no documentation for it. Before this fixed it
returned the string "<symbol-name>: nil".
* lisp/progmodes/elisp-mode.el (elisp--documentation-one-liner):
Check callback actually produced non-nil doc.
Lars Ingebrigtsen [Mon, 2 Nov 2020 15:53:57 +0000 (16:53 +0100)]
Fix mouse-1 on [Show] buttons in the *Help* buffer
* lisp/descr-text.el (describe-text-sexp): Add a `follow-link' so
that the [Show] buttons work correctly with mouse-1 (bug#44340).
Yasuhiro KIMURA [Sun, 1 Nov 2020 13:01:31 +0000 (14:01 +0100)]
Recover the contents of the schemas.xml file
* etc/schema/schemas.xml: Recover the file, which was apparently
(mostly) removed by mistake by commit
165f738382 (bug#42851).
Copyright-paperwork-exempt: yes
Arthur Miller [Mon, 2 Nov 2020 11:38:27 +0000 (12:38 +0100)]
Add directory-empty-p and new argument COUNT for directory-files-*
* doc/lispref/files.texi (Contents of Directories): Mention COUNT
argument of directory-files. Add directory-empty-p.
* etc/NEWS: Mention directory-empty-p and directory-files changes.
* lisp/dired.el (directory-empty-p): New defun.
* lisp/net/ange-ftp.el (ange-ftp-directory-files)
(ange-ftp-directory-files-and-attributes):
* lisp/net/tramp.el (tramp-handle-directory-files)
(tramp-handle-directory-files-and-attributes):
* lisp/net/tramp-adb.el
(tramp-adb-handle-directory-files-and-attributes):
* lisp/net/tramp-rclone.el (tramp-rclone-handle-directory-files):
* lisp/net/tramp-sh.el (tramp-sh-handle-directory-files-and-attributes):
* lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Add new COUNT
argument.
* src/dired.c (directory_files_internal): Implement new
RETURN_COUNT argument.
(Fdirectory_files, Fdirectory_files_and_attributes): Add new COUNT
argument.
* src/lisp.h (directory_files_internal): Add RETURN_COUNT to declaration.
* src/sysdep.c (list_system_processes): Add Qnil to
directory_files_internal call.
* test/src/dired-tests.el (directory-files-and-attributes-tests):
New file.
Lars Ingebrigtsen [Mon, 2 Nov 2020 09:17:08 +0000 (10:17 +0100)]
Partially revert previous define-minor-mode change
* lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring):
Only document the values we want to support, not the ones we
actually support.
(define-minor-mode): Partially revert to previous behaviour.
Stefan Kangas [Sun, 1 Nov 2020 21:49:12 +0000 (22:49 +0100)]
Fix mistake in Lisp conversion of describe-map-tree
* lisp/help.el (describe-map-tree): Fix mistake in conversion to Lisp
from the C function describe_map_tree; make the condition match the
now removed C code. (Bug#44360)
Juri Linkov [Sun, 1 Nov 2020 21:35:41 +0000 (23:35 +0200)]
Transient input methods bound to 'C-x \' (bug#44266)
* lisp/international/mule-cmds.el (ctl-x-map): Bind 'C-x \' to
'transient-input-method'.
(input-method-function): New defcustom.
(transient-input-method): New command.
* doc/emacs/mule.texi (Select Input Method): Document transient-input-method.
Juri Linkov [Sun, 1 Nov 2020 21:25:10 +0000 (23:25 +0200)]
* lisp/leim/quail/compose.el: New input method (bug#44267).
Juri Linkov [Sun, 1 Nov 2020 21:20:53 +0000 (23:20 +0200)]
Show nobreak-space face for more blank characters in describe-char.
* lisp/descr-text.el (describe-char): Handle more non-ASCII whitespace
characters added in
f018cffca0098ad1b82c51730a6d6cf146e3c488 (bug#44236)
Eli Zaretskii [Sun, 1 Nov 2020 19:49:35 +0000 (21:49 +0200)]
; * src/xdisp.c (display_string): Fix a typo in a comment.
Stefan Kangas [Sun, 1 Nov 2020 18:29:47 +0000 (19:29 +0100)]
Improve indexing of check-declare
* doc/lispref/functions.texi (Declaring Functions): Improve indexing.
Stefan Kangas [Sun, 1 Nov 2020 18:08:21 +0000 (19:08 +0100)]
; * lisp/autoinsert.el (auto-insert-alist): Fix texinfo URL.
The old texinfo domain seems to no longer be controlled by the GNU
project, starting at least as early as 2012. See also:
https://web.archive.org/web/
20120410044746/http://www.texinfo.org/
Stefan Kangas [Sun, 1 Nov 2020 17:52:23 +0000 (18:52 +0100)]
Don't auto-insert "@c file ends here" in .texi files
* lisp/autoinsert.el (auto-insert-alist): Don't insert "@c file ends
here" at the end of new .texi files.
Stefan Kangas [Sun, 1 Nov 2020 15:31:12 +0000 (16:31 +0100)]
Don't bind standard-output in substitute-command-keys
This fixes a regression with regards to the old C version of
substitute-command-keys.
* lisp/help.el (substitute-command-keys): Don't bind standard-output.
See Bug#39149.
* test/lisp/help-tests.el
(help-tests--was-in-buffer): New variable.
(help-substitute-command-keys/menu-filter-in-correct-buffer): New
test.
Glenn Morris [Sun, 1 Nov 2020 17:39:44 +0000 (09:39 -0800)]
* lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Doc typo.
Mattias Engdegård [Sun, 1 Nov 2020 14:57:12 +0000 (15:57 +0100)]
Add missing side-effect-free and error-free properties
Any function that is pure is also side-effect-free and some are also
error-free. Right now these have to be declared separately.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add
bool-vector-count-consecutive, bool-vector-count-population,
bool-vector-subsetp, copysign, isnan, lax-plist-get, ldexp, memql,
regexp-opt and string-to-syntax.
(side-effect-and-error-free-fns): Add type-of.
* lisp/subr.el (kbd, string-replace): Declare side-effect-free.
Mattias Engdegård [Sun, 1 Nov 2020 14:01:31 +0000 (15:01 +0100)]
* lisp/emacs-lisp/byte-opt.el (pure-fns): Fix typos.
Stefan Kangas [Sun, 1 Nov 2020 14:27:17 +0000 (15:27 +0100)]
Insert describe-map-tree header into original buffer
* lisp/help.el (describe-map-tree): Insert header into the original
buffer, not in standard-output.
* test/src/keymap-tests.el
(describe-buffer-bindings/header-in-current-buffer)
(describe-buffer-bindings/returns-nil): New tests.
Ref: https://debbugs.gnu.org/39149#31
Basil L. Contovounesios [Sun, 1 Nov 2020 14:46:22 +0000 (14:46 +0000)]
; * doc/emacs/custom.texi (Keymaps): Fix typo.
Glenn Morris [Sun, 1 Nov 2020 14:28:38 +0000 (06:28 -0800)]
; Auto-commit of loaddefs files.
Glenn Morris [Sun, 1 Nov 2020 14:12:09 +0000 (06:12 -0800)]
; Auto-commit of loaddefs files.
Lars Ingebrigtsen [Sun, 1 Nov 2020 14:00:36 +0000 (15:00 +0100)]
Make minor mode ARG work as documented
* lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring):
Clarify when minor modes are switched on/off when called from lisp
(bug#44341).
(define-minor-mode): Make calls from Lisp switch the mode on/off
as documented.
Mauro Aranda [Sun, 1 Nov 2020 13:10:08 +0000 (10:10 -0300)]
Fix saving a face setting with Customize
* lisp/cus-edit.el (custom-face-save): Make sure we back up into the
:shown-value property what the user has edited so far, if we are going
to recreate the custom-face widget. (Bug#44331)
Yasuhiro KIMURA [Sun, 1 Nov 2020 13:01:31 +0000 (14:01 +0100)]
Recover the contents of the schemas.xml file
* etc/schema/schemas.xml: Recover the file, which was apparently
(mostly) removed by mistake by commit
165f738382 (bug#42851).
Copyright-paperwork-exempt: yes
Lars Ingebrigtsen [Sun, 1 Nov 2020 12:55:29 +0000 (13:55 +0100)]
Doc string clarification for cl-some
* lisp/emacs-lisp/cl-extra.el (cl-some): Clarify the return value
(bug#44330).
Lars Ingebrigtsen [Sun, 1 Nov 2020 12:14:41 +0000 (13:14 +0100)]
custom-theme-set-variables more resilient against removed libraries
* lisp/custom.el (custom-theme-set-variables): Don't bug out on
settings that require a library that has been removed (bug#38843).
Lars Ingebrigtsen [Sun, 1 Nov 2020 11:51:17 +0000 (12:51 +0100)]
Mention non-ASCII C-c LETTER bindings in the lispref manual
* doc/lispref/tips.texi (Key Binding Conventions): Mention
non-ASCII C-c LETTER (bug#15917).
Lars Ingebrigtsen [Sun, 1 Nov 2020 11:48:34 +0000 (12:48 +0100)]
Mention the C-c LETTER keybinding convention
* doc/emacs/custom.texi (Keymaps): Reintroduce the text about C-c
LETTER (bug#15917), and clarify.
Michael Albinus [Sun, 1 Nov 2020 11:42:29 +0000 (12:42 +0100)]
Trash remote files to local trash (Bug#44216)
* doc/misc/tramp.texi (Frequently Asked Questions): Add trashing.
* lisp/net/tramp-adb.el (tramp-adb-handle-delete-directory)
(tramp-adb-handle-delete-file):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
(tramp-gvfs-handle-delete-file):
* lisp/net/tramp-sh.el (tramp-sh-handle-delete-directory)
(tramp-sh-handle-delete-file):
* lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory)
(tramp-smb-handle-delete-file):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-delete-directory)
(tramp-sudoedit-handle-delete-file): Implement local trash. (Bug#44216)
* lisp/net/tramp-crypt.el (tramp-crypt-handle-delete-directory)
(tramp-crypt-handle-delete-file): Do not trash.
* lisp/net/tramp.el (tramp-skeleton-delete-directory): New defmacro.
* test/lisp/net/tramp-tests.el (tramp-test07-file-exists-p)
(tramp-test14-delete-directory): Add trashing.
Michael Albinus [Sun, 1 Nov 2020 11:40:30 +0000 (12:40 +0100)]
* etc/NEWS: Add trashing of remote files. Fix typos.
Lars Ingebrigtsen [Sun, 1 Nov 2020 11:21:05 +0000 (12:21 +0100)]
Fix error message in feedmail
* lisp/mail/feedmail.el (feedmail-buffer-to-smtpmail): Remove
superfluous %s in insert string
Lars Ingebrigtsen [Sat, 31 Oct 2020 23:10:21 +0000 (00:10 +0100)]
Fix a segfault in the new svg code
* src/image.c (svg_load_image): Don't pass in a NULL for the
logical rect, because that will sometimes segfault.
Juri Linkov [Sat, 31 Oct 2020 20:11:02 +0000 (22:11 +0200)]
New variable integer-output-format to print integers as characters (bug#44155)
* doc/lispref/streams.texi (Output Variables): Add integer-output-format.
* src/print.c (print_object): In case of Lisp_Int, print integers
as characters when Vinteger_output_format is Qt, and in hex format
when Vinteger_output_format is 16.
(Vinteger_output_format): New variable.
* test/src/print-tests.el (print-integer-output-format): New test.
Mauro Aranda [Fri, 30 Oct 2020 14:13:34 +0000 (11:13 -0300)]
Give the scroll-bar face a non-trivial spec
* lisp/faces.el (scroll-bar): Give it a non-trivial spec, so when
resetting it to its face-
defface-spec, we effectively reset it.
(Bug#13476)
Juri Linkov [Sat, 31 Oct 2020 19:38:26 +0000 (21:38 +0200)]
Improve goto-line in regard to narrowed buffers (bug#44294)
* lisp/simple.el (goto-line): Rewrite to first find the position
of the line where to go, then later don't widen the buffer
when the found position is still inside narrowed part of buffer.
* lisp/isearch.el (isearch-message-prefix): Warn about narrowed buffer
in case of no more matches found.
Juri Linkov [Sat, 31 Oct 2020 19:33:33 +0000 (21:33 +0200)]
Reimplement commit
46b3db5579e57b9daf16667914205adc99d3f104 (bug#44294)
* lisp/progmodes/etags.el (etags-goto-tag-location): Revert change from
commit
46b3db5579e57b9daf16667914205adc99d3f104.
(xref-location-marker): Use the same change as was made in elisp-mode.el in
commit
46b3db5579e57b9daf16667914205adc99d3f104 to widen before going
to the found position.
Stefan Kangas [Sat, 31 Oct 2020 19:26:54 +0000 (20:26 +0100)]
* test/README: Document TEST_BACKTRACE_LINE_LENGTH.
Amin Bandali [Sat, 31 Oct 2020 18:39:36 +0000 (14:39 -0400)]
; * etc/NEWS: Tweak the wording for the newly added entry
Amin Bandali [Sat, 31 Oct 2020 18:29:13 +0000 (14:29 -0400)]
; * etc/NEWS: Add entry for my last change
Amin Bandali [Sat, 31 Oct 2020 18:07:11 +0000 (14:07 -0400)]
Replace irc.freenode.net with chat.freenode.net
chat.freenode.net has been the preferred address for connecting to the
freenode IRC network for years now. Replace the occurrences of
irc.freenode.net with chat.freenode.net.
Mattias Engdegård [Sat, 31 Oct 2020 16:19:44 +0000 (17:19 +0100)]
Fix eshell glob modifiers
Modified globbing such as *.txt(W) for all world-writable files ending
in .txt apparently never worked correctly.
* lisp/eshell/em-pred.el (eshell-predicate-alist): Use correct
elisp syntax for octal constants.
(eshell-pred-file-mode): Return a boolean, not a number.
Andreas Schwab [Sat, 31 Oct 2020 15:30:04 +0000 (16:30 +0100)]
wdired: fix error handling of set-file-modes
* lisp/wdired.el (wdired-perms-to-number): Return decimal number.
(wdired-do-perm-changes): Handle error from set-file-modes.
(wdired-finish-edit): Remove `rename' from error message.
(Bug#44343)
Eli Zaretskii [Sat, 31 Oct 2020 14:05:03 +0000 (16:05 +0200)]
* etc/HELLO: Enlarge tab-width to account for "tofu".
Mattias Engdegård [Sat, 31 Oct 2020 13:16:25 +0000 (14:16 +0100)]
'assoc' is not side-effect-free; constprop its pure subset
Since a supplied test function can do anything, assoc is not
side-effect-free (bug#44018). However, with only two arguments it is
pure and should be optimised accordingly.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Remove 'assoc'.
(byte-optimize-assoc): Constant-propagate through 2-arg assoc calls.
* test/lisp/emacs-lisp/bytecomp-tests.el
(byte-opt-testsuite-arith-data): Add test cases.
Eli Zaretskii [Sat, 31 Oct 2020 13:20:18 +0000 (15:20 +0200)]
Improve support for displaying Javanese script
* lisp/international/fontset.el (setup-default-fontset)
(script-representative-chars): Add Javanese entries.
* etc/HELLO: Fix the Javanese text. See
https://omniglot.com/language/phrases/javanese.php for the
source.
Stefan Monnier [Sat, 31 Oct 2020 13:07:53 +0000 (09:07 -0400)]
* src/xdisp.c (syms_of_xdisp) <"scroll-minibuffer-conservatively">: New var
Fix bug#44070, which causes the minibuffer display to jump upon minor edit
(redisplay_window): Obey it.
* lisp/simple.el (end-of-buffer): Obey it.
* test/src/xdisp-tests.el (xdisp-tests--in-minibuffer): New macro,
extracted from `xdisp-tests--minibuffer-resizing`.
(xdisp-tests--minibuffer-resizing): Use it.
(xdisp-tests--minibuffer-scroll): New test.
Mattias Engdegård [Sat, 31 Oct 2020 10:35:06 +0000 (11:35 +0100)]
Trim and explain set of safe forms for 'unsafep' (bug#44018)
* lisp/emacs-lisp/unsafep.el:
Add comment explaining the policy for which forms can be considered
'safe' in the sense of unsafep. Remove ones that didn't make the cut:
play-sound-file (large attack surface)
catch, throw (alter program flow, inject data)
replace-regexp-in-string (execute arbitary code)
error, signal (deceptive messages)
* test/lisp/emacs-lisp/unsafep-tests.el (unsafep-tests--unsafe):
Add test cases.
* etc/NEWS: Announce the change.
Mattias Engdegård [Sun, 25 Oct 2020 11:40:36 +0000 (12:40 +0100)]
Parse GDB/MI results directly instead of going via JSON (bug#44173)
Translating GDB/MI into JSON is an unnecessary and fragile detour
that made it hard to deal with octal escapes in strings correctly.
Parse GDB/MI directly instead.
* lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): Adjust doc string.
(gdb-mi-decode, gud-gdbmi-marker-filter): Remove gdb-mi-decode.
(gdb-jsonify-buffer): Remove.
(gdb-mi--parse-tuple-or-list, gdb-mi--parse-c-string)
(gdb-mi--parse-value, gdb-mi--parse-result-or-value)
(gdb-mi--parse-results, gdb-mi--fix-key, gdb-mi--extend-fullname)
(gdb-mi--c-string-from-string): New functions.
(gdb-json-read-buffer, gdb-json-string, gdb-json-partial-output):
Rename to gdb-mi--read-buffer, gdb-mi--from-string and
gdb-mi--partial-output respectively. Remove useless FIX-LIST
argument. FIX-KEY is now a symbol, not a string. All callers updated.
(gdb-tooltip-print, gdbmi-bnf-log-stream-output, gdb-internals)
(gdb-console, gdb-done-or-error, gdb-get-source-file-list)
(gdb-get-prompt, gdb-get-source-file):
Use gdb-mi--c-string-from-string instead of 'read'.
* test/lisp/progmodes/gdb-mi-tests.el: New file.
Eli Zaretskii [Sat, 31 Oct 2020 11:02:52 +0000 (13:02 +0200)]
* etc/HELLO: Add Egyptian Hieroglyphs.
Eli Zaretskii [Sat, 31 Oct 2020 10:40:25 +0000 (12:40 +0200)]
Support prettified display of fractional numbers
* lisp/composite.el (composition-function-table): Define an entry
for U+2044 FRACTION SLASH, for prettier display of fractional
numbers.
Michael Albinus [Sat, 31 Oct 2020 10:29:06 +0000 (11:29 +0100)]
Check also for "DragonFly" remote systems in Tramp
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Check also for "DragonFly".
Eli Zaretskii [Sat, 31 Oct 2020 09:41:53 +0000 (11:41 +0200)]
Speed up ls-lisp
This speeds up Dired by 25% in large directories.
* lisp/ls-lisp.el (ls-lisp--time-locale): New defvar.
(ls-lisp-format-time): calculate the locale for formatting times
only once and cache the value in 'ls-lisp--time-locale'.
(Bug#44273)
Eli Zaretskii [Sat, 31 Oct 2020 08:01:44 +0000 (10:01 +0200)]
* doc/lispref/commands.texi (Key Sequence Input): Fix indexing.
(cherry picked from commit
41c4f337c8f798d4700dcd13b73ad4ccdb3257eb)
Jared Finder [Sun, 4 Oct 2020 07:01:23 +0000 (00:01 -0700)]
Updating docs with all special window prefix keys.
* doc/lispref/commands.texi (Key Sequence Input): Add documentation for
missing special window areas. Explicitly call out window or frame.
(cherry picked from commit
a105db13e11fd15cc72804bf33672122d1c3f2e1)
Eli Zaretskii [Sat, 31 Oct 2020 08:01:44 +0000 (10:01 +0200)]
* doc/lispref/commands.texi (Key Sequence Input): Fix indexing.
Jared Finder [Sun, 4 Oct 2020 07:01:23 +0000 (00:01 -0700)]
Updating docs with all special window prefix keys.
* doc/lispref/commands.texi (Key Sequence Input): Add documentation for
missing special window areas. Explicitly call out window or frame.
Jared Finder [Sat, 24 Oct 2020 15:25:06 +0000 (08:25 -0700)]
Fix unit tests broken by changes to xt-mouse.el
* test/lisp/xt-mouse-tests.el (xt-mouse-tracking-basic)
(xt-mouse-tracking-utf-8): Update expected escape sequence.
Eli Zaretskii [Sat, 31 Oct 2020 07:56:14 +0000 (09:56 +0200)]
Revert "Temporarily mark two failing tests"
This reverts commit
a8426f46726d94cdf21c0e6b3c85c0afe0064784.
A proper fix for the test is about to be installed shortly.
Thien-Thi Nguyen [Sat, 31 Oct 2020 02:40:11 +0000 (22:40 -0400)]
Make hideshow.el work with Mhtml mode
Suggested by Ian Williams <norbekian9@gmail.com>.
* lisp/textmodes/mhtml-mode.el: Require ‘pcase’ when compiling.
(mhtml-forward): New func.
* lisp/progmodes/hideshow.el (hs-special-modes-alist):
Add entry for ‘mhtml-mode’.
Glenn Morris [Sat, 31 Oct 2020 02:20:24 +0000 (19:20 -0700)]
Improve reproducibility of generated -pkg.el files
* lisp/emacs-lisp/package.el (package-generate-description-file):
Don't include the full name of the source file in the header,
since that varies non-reproducibly according to the build directory.
https://bugs.debian.org/972861
Note that elpa.gnu.org's admin/archive-contents.el does this by hand
and already only includes the nondirectory part.
João Távora [Fri, 30 Oct 2020 22:09:36 +0000 (22:09 +0000)]
Shoosh byte-compilation warning in lisp/emacs-lisp/eldoc.el
Per bug#43609, elisp-eldoc-documentation-function is again in master,
but since it's now officially obsoleted, this backward compatibility
shim in eldoc--eval-expression-setup shouldn't unnecessarily trigger
warnings in master's code.
* lisp/emacs-lisp/eldoc.el (eldoc--eval-expression-setup): Shoosh
by-compilation warning.
João Távora [Fri, 30 Oct 2020 21:47:44 +0000 (21:47 +0000)]
Don't make ElDoc doc buffer visible in buffer list by default
Fixes: bug#44334
* lisp/emacs-lisp/eldoc.el (eldoc-doc-buffer): No longer take
INTERACTIVE arg. Show buffer if invisible.
(eldoc--format-doc-buffer): Don't change buffer visibility.
(eldoc-display-in-buffer): Show buffer if invisible if by calling
eldoc-doc-buffer.
João Távora [Fri, 30 Oct 2020 18:43:20 +0000 (18:43 +0000)]
Bring back elisp-eldoc-documentation-function, marked obsolete
Fixes: bug#43609
It's not useful for ElDoc's eldoc-mode mechanism in Elisp, and nothing
in Emacs uses it, but it wasn't strictly marked internal, so it's best
to bring it back.
* lisp/progmodes/elisp-mode.el (elisp--documentation-one-liner):
New helper.
(elisp-eldoc-documentation-function): New function, with
obsoletion warning.
Stefan Monnier [Fri, 30 Oct 2020 22:10:06 +0000 (18:10 -0400)]
* lisp/simple.el (blink-matching-open): Fix bug#37127
Don't call `syntax-propertize` from within narrowing
* lisp/progmodes/cperl-mode.el (cperl-forward-re): Revert last patch,
since it is now redundant.
* test/lisp/progmodes/cperl-mode-tests.el (cperl-bug37127):
Remove unused var; fix test so it really catches the previous bug;
tweak the code to use mode-agnostic commands so it also works in `perl-mode`.
Michael Albinus [Fri, 30 Oct 2020 19:40:49 +0000 (20:40 +0100)]
Fix Bug#44289
* lisp/files.el (directory-listing-before-filename-regexp):
Support DD-MMM-YYYY format. (Bug#44289)
Lars Ingebrigtsen [Fri, 30 Oct 2020 15:15:42 +0000 (16:15 +0100)]
Tweak previous python-mode region fix
* lisp/progmodes/python.el (python-shell-buffer-substring): Tweak
the previous fix for bug#39398 to behave somewhat more like it
used to.
Lars Ingebrigtsen [Fri, 30 Oct 2020 15:10:57 +0000 (16:10 +0100)]
Revert "Adjust python tests after fix for bug#39398"
This reverts commit
c6fb23873a594b6a4fc57fa107869a2e82159d07.
The code is tweaked to be more backwards-compatible.
Lars Ingebrigtsen [Fri, 30 Oct 2020 15:07:21 +0000 (16:07 +0100)]
Fix copying symbolic links in eshell
* lisp/eshell/em-unix.el (eshell-shuffle-files): Don't bug out
when copying symbolic links (bug#38577).
Stefan Kangas [Fri, 30 Oct 2020 13:15:45 +0000 (14:15 +0100)]
; Fix typo in my last commit
* test/lisp/emacs-lisp/text-property-search-tests.el
(text-property-search--pos-test): Fix typo.
Dima Kogan [Fri, 30 Oct 2020 13:04:06 +0000 (14:04 +0100)]
Add a new command to regenerate a hunk in diff-mode
* lisp/vc/diff-mode.el (diff-refresh-hunk): New function (bug#44312).
(diff-mode-map): Bind C-c C-l.
Lars Ingebrigtsen [Fri, 30 Oct 2020 12:50:49 +0000 (13:50 +0100)]
Fix fontifying of ::= in Makefiles
* lisp/progmodes/make-mode.el (makefile-match-dependency): Don't
fontify the POSIX immediate assignment operator ::= as a
dependency (bug#44319).
Harald Jörg [Fri, 30 Oct 2020 12:23:52 +0000 (13:23 +0100)]
Suppress a misleading message when closing a paren in a regex
* lisp/progmodes/cperl-mode.el (cperl-forward-re): Suppress an
error message about "End of string/RE not found" when we are
at the end of a narrowed buffer where the end of a RE is
temporarily unavailable (Bug#37127).
* test/lisp/progmodes/cperl-mode-tests.el (cperl-bug37127):
Add a test to verify that the message is suppressed when
inappropriate, but appears when the RE *is* incomplete.
Stefan Kangas [Fri, 30 Oct 2020 11:48:30 +0000 (12:48 +0100)]
Clarify point position after text-property-search
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward, text-property-search-backward): Doc fix
to clarify placement of point after search.
* test/lisp/emacs-lisp/text-property-search-tests.el
(text-property-search--pos-test): New defun.
(text-property-search-forward-point-at-beginning)
(text-property-search-backward-point-at-end): New test.